

package com.zdkj.subway.stm.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.zdkj.subway.stm.util.LocalDateConverter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;

/**
 * TVM详细日清点表（主表）
 *
 * @author songtuo
 * @date 2020-03-05 21:04:12
 */
@Data
@TableName("sw_st_tvm_check_detail")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "TVM详细日清点表（主表）")
public class SwStTvmCheckDetail extends Model<SwStTvmCheckDetail> {
    //private static final long serialVersionUID = 7025231892699172443L;
    //private static final long serialVersionUID = 1L;
    /**
     * 唯一标识
     */
    @TableId
    @ApiModelProperty(value = "唯一标识")
    @ExcelProperty(value = "序号")
    private Integer id;
    /**
     * 线路编码不能重复
     */
    @ExcelIgnore
    @ApiModelProperty(value = "线路编码不能重复")
    private String lineCode;
    /**
     * 车站编码不能重复
     */
    @ApiModelProperty(value = "车站编码不能重复")
    @ExcelIgnore
    private String stationCode;
    /**
     * TVM编号
     */
    @ExcelProperty("TVM编号")
    @ApiModelProperty(value = "TVM编号")
    private String tvmCode;


    /**
     * 清点时间
     */
    @ApiModelProperty(value = "清点时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelIgnore
    private String checkTime;

    /**
     * REVENUETIME
     * 收益日期
     */
    @ApiModelProperty(value = "收益日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ExcelProperty(value = "清点时间", converter = LocalDateConverter.class)
    private LocalDate revenueTime;
    /**
     * 清点金额
     */
    @ExcelProperty("清点金额")
    @ApiModelProperty(value = "清点金额(元)")
    private BigDecimal checkAmount;
    /**
     * 清点人1
     */
    @ExcelIgnore
    @ApiModelProperty(value = "清点人1ID")
    private Integer checkPersonOneId;

    /**
     * 清点人1 员工号
     */
    @ExcelProperty("清点人1")
    @ApiModelProperty(value = "清点人1名称")
    private String checkPersonOneName;

    @ApiModelProperty(value = "清点人1员工号")
    @ExcelProperty("清点人1工号")
    private String checkPersonOneJopNo;
    /**
     * 清点人2（用户表）
     */
    @ExcelIgnore
    @ApiModelProperty(value = "清点人2Id")
    private Integer checkPersonTwoId;
    /**
     * 清点人2 员工号
     */
    @ExcelProperty("清点人2")
    @ApiModelProperty(value = "清点人2名称")
    private String checkPersonTwoName;

    @ApiModelProperty(value = "清点人2员工号")
    @ExcelProperty("清点人2工号")
    private String checkPersonTwoJopNo;
    /**
     * 清点人确认：0未确认 1已确认
     */
    @ApiModelProperty(value = "清点人确认：0未确认 1已确认")
    @ExcelProperty("状态")
    private String confirmStatus;
    /**
     * 0:未提交1:已提交2:已清算
     */
    @ApiModelProperty(value = "0:未提交1:已提交2:已清算")
    @ExcelProperty("状态")
    private String approvalStatus;

    @ExcelIgnore
    @ApiModelProperty(value = "可用于修改次数的判断，也可用于乐观锁")
    private Integer version;
    /**
     * 创建人ID
     */
    @ApiModelProperty(value = "创建人ID")
    @ExcelIgnore
    private Integer creatorId;
    /**
     * 备注
     */
    @ExcelProperty("备注")
    @ApiModelProperty(value = "备注")
    private String remark;
    /**
     * 部门ID
     */
    @ExcelIgnore
    @ApiModelProperty(value = "部门ID")
    private Integer deptId;
    /**
     * 创建人名称
     */
    @ExcelIgnore
    @ApiModelProperty(value = "创建人名称")
    private String creatorName;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @ExcelIgnore
    private LocalDateTime createTime;
    /**
     * 数据更新时间
     */
    @ExcelIgnore
    @ApiModelProperty(value = "数据更新时间")
    private LocalDateTime updateTime;
    /**
     * 删除标志 1：删除 0：未删
     */
    @TableLogic
    @ExcelIgnore
    @ApiModelProperty(value = "删除标志 1：删除 0：未删")
    private String delFlag;
    
	 /**
     * 补币硬币找零箱钱箱编号
     */    
    @ExcelIgnore
	@TableField(exist = false)
    @ApiModelProperty(value = "补币硬币找零箱钱箱编号")
    private String coinChangeCashBoxCode;
	/**
     * 补币纸币找零箱钱箱编号
     */
    @ExcelIgnore
	@TableField(exist = false)
    @ApiModelProperty(value = "补币纸币找零箱钱箱编号")
    private String noteChangeCashBoxCode;


    /**
     * 报表修改状态：默认0\r\n0：关闭\r\n1：打开，打开时可以编辑，保存时并记录日志
     */
    @ApiModelProperty(value = "报表修改状态：默认0\\r\\n0：关闭\\r\\n1：打开，打开时可以编辑，保存时并记录日志")
    private String reportModifyStatus;

    /**
     * 更新人工号
     */
    @ApiModelProperty(value="更新人工号")
    private String entryUpdateJobNo;

    /**
     * 更新人名称
     */
    @ApiModelProperty(value="更新人名称")
    private String entryUpdateJobName;

    /**
     * 更新时间
     */
    @ApiModelProperty(value="更新时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date entryUpdateTime;


    /**
     * 是否加入报表差错
     */
    @ApiModelProperty(value = "是否加入报表差错")
    private String isAddReprotError;

}
